package com.sky.mapper;

import com.sky.dto.CategoryPageQueryDTO;
import com.sky.entity.Category;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface CategoryMapper {


/**
 * 分页查询分类列表
 * 根据传入的分页查询条件DTO，返回分类列表
 *
 * @param dto 分页查询条件数据传输对象，包含分页参数和查询条件
 * @return 返回分类列表结果
 */
    List<Category> page(CategoryPageQueryDTO dto);

/**
 * 插入分类信息的方法
 * @param category 要插入的分类对象，包含分类的相关信息
 */


    void insert(Category category);

/**
 * 更新分类信息的方法
 * @param category 需要更新的分类对象，包含更新后的分类信息
 */
    void update(Category category);

/**
 * 根据ID获取分类信息
 * @param id 分类ID
 * @return 返回对应的分类对象，如果不存在则可能返回null
 */
    Category getById(Long id);

    void deleteById(Long id);

    List<Category> getByType(Integer type);
}
